1. Field
The embodiment relates to a clock-gating circuit insertion method, a clock-gating circuit insertion program and a designing apparatus for inserting clock-gating circuits into an integrated circuit.
2. Description of the Related Art
A clock-gating circuit may be inserted midway on a clock tree during a conventional design of a semiconductor integrated circuit. The clock gating circuit reduces the power consumption of the semiconductor integrated circuit. As a designing apparatus and method for supporting insertion of a clock-gating circuit, the following proposals have been made.
One conventional designing apparatus for a semiconductor integrated circuit generates timing restrictions given to the enable logic, calculates the delay time in the enable logic, and determines whether or not the calculated delay time satisfies the generated timing restrictions. The conventional designing apparatus uses information concerning at least a logic circuit which was not clock-gated, information concerning enable logic for controlling clock outputs, and information concerning the gating circuit. If the calculated delay time satisfies the generated timing restrictions, a clock-gated logic circuit is produced by adding the gating circuit and a circuit configured of the enable logic to the logic circuit. The conventional designing apparatus outputs information concerning the clock-gated logic circuit and timing restrictions concerning the enable logic.
Another conventional design support method for semiconductor integrated circuits begins by setting the delay time of a gated buffer to a register as a first parameter representing the delay time from the gated buffer. Next, a first timing restriction is given to the gated clock part with the first parameter taken into account. Timing analysis of the circuit including the gated clock part subject to the first timing restriction is performed. Whether or not the gated clock part satisfies the first timing restriction is determined from the result of the timing analysis. A second parameter representing the delay time from the gated buffer is set to the register after the gated clock part has satisfied the timing restriction and the circuit has been processed for wiring. The delay time from the gated buffer register cell is driven by this gated buffer. A second timing restriction is given to the gated clock part with the second parameter taken into account. Timing analysis of the circuit including the gated clock part is performed subject to the second timing restriction. Finally, whether or not the gated clock part satisfies the second timing restriction is determined from the result of the timing analysis.
The aforementioned conventional designing apparatus and method for semiconductor integrated circuits limit the position at which the clock-gating circuit can be inserted to locations where the setup conditions for the enable signal were satisfied in the timing analysis at the time of designing. The setup conditions for the enable signal are the conditions necessary for the enable signal to reach a clock-gating circuit before the arrival of the edge of the clock signal, in order to enable the clock-gating circuit to pass or intercept the clock signal.
FIG. 1 shows conventional positions for insertion of clock-gating circuits. A delay of the enable signal prevents clock-gating circuits 142 from being inserted upstream (the side closer to the clock source) of a clock tree 141, and the clock-gating circuits 142 can be inserted only downstream of the clock tree 141.
FIG. 2 shows other conventional positions for insertion of clock-gating circuits. Delays of the enable signals also prevent the clock-gating circuits from being inserted upstream (the side closer to the clock source) of the clock tree 141 where clock-gating circuits 142, 143, 144 and 145 operated by different enable signals are inserted on the downstream side of the clock tree 141, and so the clock-gating circuits 142 can be inserted only downstream of the clock tree 141.
As described so far, the aforementioned conventional designing apparatus and method for semiconductor integrated circuits involve a problem that clock-gating circuits cannot be inserted in positions which logically should allow their insertion, if setup conditions are not satisfied and their insertion would be considered violation of the setup conditions, and accordingly sufficient saving of power consumption cannot be achieved.